package com.work.mapper;

import com.work.domain.CompanyIndexInfo;
import com.work.domain.CompanyInfo;
import com.work.domain.CompanyInfoExample;
import com.work.domain.CompanySearchtype;
import com.work.domain.CompanyTopInfo;

import java.util.List;
import org.apache.ibatis.annotations.Param;

public interface CompanyInfoMapper {
    int countByExample(CompanyInfoExample example);

    int deleteByExample(CompanyInfoExample example);

    int deleteByPrimaryKey(Integer cid);

    int insert(CompanyInfo record);

    int insertSelective(CompanyInfo record);

    List<CompanyInfo> selectByExample(CompanyInfoExample example);

    CompanyInfo selectByPrimaryKey(Integer cid);

    int updateByExampleSelective(@Param("record") CompanyInfo record, @Param("example") CompanyInfoExample example);

    int updateByExample(@Param("record") CompanyInfo record, @Param("example") CompanyInfoExample example);

    int updateByPrimaryKeySelective(CompanyInfo record);

    int updateByPrimaryKey(CompanyInfo record);

    //查询公司所有列表信息
    List<CompanyInfo> findAllCompanyInfo();
    //查询公司首页列表
	List<CompanyIndexInfo> findAllCompanyIndexInfo();
	//查询公司首页推荐位信息列表
	List<CompanyTopInfo> findAllCompanyTopInfo();
	//根据Cid查询公司详情信息
	CompanyInfo findCompanyInfoByCid(@Param("cid") Integer cid);
	//根据条件查询企业列表信息
	//List<CompanyInfo> findCompanyListByConditions(@Param("cname")String cname, @Param("caddress")String caddress);
	//根据id删除公司信息
	Integer deleteCompanyById(@Param("cid")int cid);
    //编辑公司信息
	void updateCompanyInfo(CompanyInfo companyInfo);
    //web查询公司信息
	List<CompanyInfo> findCompanyListByConditionsWeb(@Param("cname")String cname,@Param("caddress") String caddress, @Param("ccount")String ccount,@Param("clabourcost") String clabourcost);
    //web端添加公司信息
	Integer saveCompanyInfo(CompanyInfo ci);
	//前台分页：获取公司总数量
	int findCompanyCount();
	//前台分页：获取公司分页信息
	List<CompanyIndexInfo> findCompanyPage(int startPos, int pageSize);
    //根据公司名称搜索首页信息
	List<CompanyIndexInfo> findCompanyListByCname(@Param("cname")String value);
    //根据公司地址搜索首页信息
	List<CompanyIndexInfo> findCompanyListByCaddress(@Param("caddress")String value);
    //根据公司人数搜索首页信息
	List<CompanyIndexInfo> findCompanyListByCcount(@Param("ccount")String value);
    //所有所有匹配的首页信息
	List<CompanyIndexInfo> findCompanyListByAllConditions(@Param("value")String value);
	
   
	
}